/**
 *
 * © Bahadir Zeren 2011
 * bzeren@gmail.com
 * No warranties, express or implied, are made for this program.
 *
 */

package org.baatar.opt.genetic.test.x;

import org.baatar.opt.genetic.chromosome.IChromosome;
import org.baatar.opt.genetic.chromosome.IChromosomeFactory;

/**
 *
 * Chromosome factory class for char structured chromosomes.
 *
 */
public class ChromosomeFactoryMinXSquare implements IChromosomeFactory<Character> {

    private int chromosomeLength = 24;
    private double minValue = -10000.0;
    private double maxValue = 10000.0;

    public ChromosomeFactoryMinXSquare() {
    }

    @Override
    public IChromosome<Character> createChromosome() {
        return new ChromosomeMinXSquare(this);
    }

    @Override
    public int getChromosomeLength() {
        return chromosomeLength;
    }

    /**
     * @return the minValue
     */
    public double getMinValue() {
        return minValue;
    }

    /**
     * @return the maxValue
     */
    public double getMaxValue() {
        return maxValue;
    }

    /**
     * @param chromosomeLength the chromosomeLength to set
     */
    public void setChromosomeLength(int chromosomeLength) {
        this.chromosomeLength = chromosomeLength;
    }

    /**
     * @param minValue the minValue to set
     */
    public void setMinValue(double minValue) {
        this.minValue = minValue;
    }

    /**
     * @param maxValue the maxValue to set
     */
    public void setMaxValue(double maxValue) {
        this.maxValue = maxValue;
    }

}
